using Framework;

namespace Game
{
    public static partial class GameEntry
    {
        public static void InitBuiltin()
        {
            Debugger = FrameworkEntry.GetModule<Framework.Debugger.DebuggerManager>();
            Event = FrameworkEntry.GetModule<Framework.Event.EventManager>();
            Input = FrameworkEntry.GetModule<Framework.Input.InputManager>();
            Graphics = FrameworkEntry.GetModule<Framework.Graphics.GraphicsManager>();
            Resource = FrameworkEntry.GetModule<Framework.Resource.ResourceManager>();
            Scene = FrameworkEntry.GetModule<Framework.Scene.SceneManager>();
            UI = FrameworkEntry.GetModule<Framework.UI.UIManager>();
            Network = FrameworkEntry.GetModule<Framework.Network.NetworkManager>();

            // 初始化场景配置
            Scene.LoadSceneUIPath = AssetUtility.GetUIPath("Common/LoadingPanel");

            // 初始化图形设置
            Graphics.SetRenderFeatureActive(Framework.Graphics.ERenderFeature.BokenBlur, false);
        }

        public static Framework.Event.EventManager Event
        {
            get;
            private set;
        }

        public static Framework.Debugger.DebuggerManager Debugger
        {
            get;
            private set;
        }

        public static Framework.Input.InputManager Input
        {
            get;
            private set;
        }

        public static Framework.Graphics.GraphicsManager Graphics
        {
            get;
            private set;
        }

        public static Framework.Resource.ResourceManager Resource
        {
            get;
            private set;
        }

        public static Framework.Scene.SceneManager Scene
        {
            get;
            private set;
        }

        public static Framework.UI.UIManager UI
        {
            get;
            private set;
        }

        public static Framework.Network.NetworkManager Network
        {
            get;
            private set;
        }

    }
}